<template>
	<div id="loginOut">
		<div class="main-body">
			<div class="login-main">
				<div class="login-top">
					<span>CRM后台登录</span>
					<span class="bg1"></span>
					<span class="bg2"></span>
				</div>
				<form class="layui-form login-bottom" action="javascript:;">
					<div class="center">
						<div class="item">
							<span class="icon icon-2"></span>
							<input type="text" id="username" v-model="username" name="username" value="admin"
								lay-verify="required" placeholder="请输入登录账号" maxlength="24" />
						</div>

						<div class="item">
							<span class="icon icon-3"></span>
							<input type="password" v-model="password" name="password" value="123456"
								lay-verify="required" placeholder="请输入密码" maxlength="20">
							<span class="bind-password icon icon-4"></span>
						</div>
						<!--发送邮箱验证码-->
						<div class="item">
							<input type="text" id="email" v-model="email" name="email" value="2900175871@qq.com"
								lay-verify="required" placeholder="请输入邮箱" maxlength="24" />
						</div>
						<div class="item">
							<input type="button" value="获取验证码" @click="getEmailCode()"
								style="width: 200px;height: 30px;color: white;background-color: deepskyblue;border-radius: 5px;margin-left: 50px;">
						</div>
						<div id="validatePanel" class="item" style="width: 137px;">
							<input type="text" v-model="captcha" name="captcha" lay-verify="required"
								placeholder="请输入验证码" maxlength="6">
							<!--this.src+'?'是将this.src的原值后面加上?,向服务器发送一个新的get请求,从而获取新的验证码-->
							<!--                    <img id="refreshCaptcha" class="validateImg"  src="/captcha/getCaptcha.do" onclick="this.src=this.src+'?'" >-->
						</div>

					</div>
					<div class="layui-form-item" style="text-align:center; width:100%;height:100%;margin:0px;">
						<button class="login-btn" @click="login()" lay-submit="" lay-filter="login">立即登录</button>
					</div>
				</form>
			</div>
		</div>
		<div class="footer">
			©版权所有<span class="padding-5">|</span>
			<a target="_blank" href=""></a>
		</div>
	</div>
</template>

<script>
	export default {
		name: "Login",
		data() {
			return {
				username: "admin",
				password: "123456",
				email: "2900175871@qq.com",
				captcha: ""
			}
		},
		created() {
			layui.use(['form', 'jquery'], function() {
				var $ = layui.jquery,
					form = layui.form,
					layer = layui.layer;

				// 登录过期的时候，跳出ifram框架
				if (top.location != self.location) top.location = self.location;

				$('.bind-password').on('click', function() {
					if ($(this).hasClass('icon-5')) {
						$(this).removeClass('icon-5');
						$("input[name='password']").attr('type', 'password');
					} else {
						$(this).addClass('icon-5');
						$("input[name='password']").attr('type', 'text');
					}
				});

				$('.icon-nocheck').on('click', function() {
					if ($(this).hasClass('icon-check')) {
						$(this).removeClass('icon-check');
					} else {
						$(this).addClass('icon-check');
					}
				});
			})

		},
		methods: {
			getEmailCode() {
				this.axios({
					url: "/app/email/send.do",
					method: "POST",
					params: {
						username: this.username,
						email: this.email,
					}
				}).then((result) => {
					console.log(result);
					if (result.data.code == -1) {
						// alert(result.data.msg)
						this.$notify({
						    title:"温馨提示",
						    message:result.data.msg,
						    type:"error",
							customClass:"center_log"
						})
					} else {
						// alert("请查看邮箱")
						this.$notify({
						    title:"温馨提示",
						    message:"请查看邮箱",
						    type:"success"
						})
					}
				}).catch((result) => {
					// alert("请求失败");
					this.$notify({
					    title:"温馨提示",
					    message:"请求失败",
					    type:"danger"
					})
				});
			},
			login() {
				this.axios({
					url: "/app/account/login.do",
					method: "POST",
					//传参  /account/getLogin.do?username=...&pwd=...&captcha=...
					params: {
						username: this.username,
						pwd: this.password,
						captcha: this.captcha,
						email: this.email
					}
				}).then((result) => {
					console.log(result);
					//对后端返回的数据进行处理
					var res = result.data.code;
					if (res == 200) {
						//获取到后端返回给前端的数据
						var user = result.data.data;
						
						/* 子  -》  父 传值 */
						this.$emit("login-success",user);
							
					} else {
						var msg = result.data.msg;
						// alert("登录失败:"+msg);
						this.$notify({
						    title:"温馨提示",
						    message: msg,
						    type:"danger"
						})
					}
				}).catch((result) => {
					// alert("请求失败");
					this.$notify({
					    title:"温馨提示",
					    message: "请求失败",
					    type:"danger"
					})
				});
			}

		}
	}
</script>

<style scoped>
	
	
	#loginOut {
		width: 100%;
		height: 1000px;
		background-image: url("/public/resources/images/loginbg.png");
		background-size: 100% auto;
		background-repeat: no-repeat;

	}

	.main-body {
		top: 50%;
		left: 50%;
		position: absolute;
		-webkit-transform: translate(-50%, -50%);
		-moz-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
		-o-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
		overflow: hidden;
	}

	.login-main .login-bottom .center .item input {
		display: inline-block;
		width: 227px;
		height: 22px;
		padding: 0;
		position: absolute;
		border: 0;
		outline: 0;
		font-size: 14px;
		letter-spacing: 0;
	}

	.login-main .login-bottom .center .item .icon-1 {
		background: url(/public/resources/js/layuimini/images/icon-login.png) no-repeat 1px 0;
	}

	.login-main .login-bottom .center .item .icon-2 {
		background: url(/public/resources/js/layuimini/images/icon-login.png) no-repeat -54px 0;
	}

	.login-main .login-bottom .center .item .icon-3 {
		background: url(/public/resources/js/layuimini/images/icon-login.png) no-repeat -106px 0;
	}

	.login-main .login-bottom .center .item .icon-4 {
		background: url(/public/resources/js/layuimini/images/icon-login.png) no-repeat 0 -43px;
		position: absolute;
		right: -10px;
		cursor: pointer;
	}

	.login-main .login-bottom .center .item .icon-5 {
		background: url(/public/resources/js/layuimini/images/icon-login.png) no-repeat -55px -43px;
	}

	.login-main .login-bottom .center .item .icon-6 {
		background: url(/public/resources/js/layuimini/images/icon-login.png) no-repeat 0 -93px;
		position: absolute;
		right: -10px;
		margin-top: 8px;
		cursor: pointer;
	}

	.login-main .login-bottom .tip .icon-nocheck {
		display: inline-block;
		width: 10px;
		height: 10px;
		border-radius: 2px;
		border: solid 1px #9abcda;
		position: relative;
		top: 2px;
		margin: 1px 8px 1px 1px;
		cursor: pointer;
	}

	.login-main .login-bottom .tip .icon-check {
		margin: 0 7px 0 0;
		width: 14px;
		height: 14px;
		border: none;
		background: url(/public/resources/js/layuimini/images/icon-login.png) no-repeat -111px -48px;
	}

	.login-main .login-bottom .center .item .icon {
		display: inline-block;
		width: 33px;
		height: 22px;
	}

	.login-main .login-bottom .center .item {
		width: 288px;
		height: 35px;
		border-bottom: 1px solid #dae1e6;
		margin-bottom: 35px;
	}

	.login-main {
		width: 428px;
		position: relative;
		float: left;
	}

	.login-main .login-top {
		height: 117px;
		background-color: #148be4;
		border-radius: 12px 12px 0 0;
		font-family: SourceHanSansCN-Regular;
		font-size: 30px;
		font-weight: 400;
		font-stretch: normal;
		letter-spacing: 0;
		color: #fff;
		line-height: 117px;
		text-align: center;
		overflow: hidden;
		-webkit-transform: rotate(0);
		-moz-transform: rotate(0);
		-ms-transform: rotate(0);
		-o-transform: rotate(0);
		transform: rotate(0);
	}

	.login-main .login-top .bg1 {
		display: inline-block;
		width: 74px;
		height: 74px;
		background: #fff;
		opacity: .1;
		border-radius: 0 74px 0 0;
		position: absolute;
		left: 0;
		top: 43px;
	}

	.login-main .login-top .bg2 {
		display: inline-block;
		width: 94px;
		height: 94px;
		background: #fff;
		opacity: .1;
		border-radius: 50%;
		position: absolute;
		right: -16px;
		top: -16px;
	}

	.login-main .login-bottom {
		width: 428px;
		background: #fff;
		border-radius: 0 0 12px 12px;
		padding-bottom: 53px;
	}

	.login-main .login-bottom .center {
		width: 288px;
		margin: 0 auto;
		padding-top: 40px;
		padding-bottom: 15px;
		position: relative;
	}

	.login-main .login-bottom .tip {
		clear: both;
		height: 16px;
		line-height: 16px;
		width: 288px;
		margin: 0 auto;
	}

	body {
		background: url(/public/resources/js/layuimini/images/loginbg.png) 0% 0% / cover no-repeat;
		position: static;
		font-size: 12px;
	}

	input::-webkit-input-placeholder {
		color: #a6aebf;
	}

	input::-moz-placeholder {
		/* Mozilla Firefox 19+ */
		color: #a6aebf;
	}

	input:-moz-placeholder {
		/* Mozilla Firefox 4 to 18 */
		color: #a6aebf;
	}

	input:-ms-input-placeholder {
		/* Internet Explorer 10-11 */
		color: #a6aebf;
	}

	input:-webkit-autofill {
		/* 取消Chrome记住密码的背景颜色 */
		-webkit-box-shadow: 0 0 0 1000px white inset !important;
	}

	html {
		height: 100%;
	}

	.login-main .login-bottom .tip {
		clear: both;
		height: 16px;
		line-height: 16px;
		width: 288px;
		margin: 0 auto;
	}

	.login-main .login-bottom .tip .login-tip {
		font-family: MicrosoftYaHei;
		font-size: 12px;
		font-weight: 400;
		font-stretch: normal;
		letter-spacing: 0;
		color: #9abcda;
		cursor: pointer;
	}

	.login-main .login-bottom .tip .forget-password {
		font-stretch: normal;
		letter-spacing: 0;
		color: #1391ff;
		text-decoration: none;
		position: absolute;
		right: 62px;
	}

	.login-main .login-bottom .login-btn {
		width: 288px;
		height: 40px;
		background-color: #1E9FFF;
		border-radius: 16px;
		margin: 24px auto 0;
		text-align: center;
		line-height: 40px;
		color: #fff;
		font-size: 14px;
		letter-spacing: 0;
		cursor: pointer;
		border: none;
	}

	.login-main .login-bottom .center .item .validateImg {
		position: absolute;
		right: 1px;
		cursor: pointer;
		height: 36px;
		border: 1px solid #e6e6e6;
	}

	.footer {
		left: 0;
		bottom: 0;
		color: #fff;
		width: 100%;
		position: absolute;
		text-align: center;
		line-height: 30px;
		padding-bottom: 10px;
		text-shadow: #000 0.1em 0.1em 0.1em;
		font-size: 14px;
	}

	.padding-5 {
		padding: 5px !important;
	}

	.footer a,
	.footer span {
		color: #fff;
	}

	@media screen and (max-width:428px) {
		.login-main {
			width: 360px !important;
		}

		.login-main .login-top {
			width: 360px !important;
		}

		.login-main .login-bottom {
			width: 360px !important;
		}
	}
</style>